package Adapter;

import java.util.ArrayList;
import java.util.List;

import IHM.Materiel;

public class AdapterMolette {

	private Adapter adapter;
	private float currentPosition, previousPosition=0, valuePreviousListe=0;
	private List<Float> listePosition = new ArrayList<Float>();

	public AdapterMolette(Adapter adapter) {
		this.adapter = adapter;

	}

	
	/**
	 * Permet de lire la position actuelle de la molette
	 * ainsi que de filtrer les envois de valeurs de la molette pour ne pas surcharger
	 * l adapter de valeur identique
	 */
	public void lireMateriel() {
		currentPosition = Materiel.getMolette().position();
		if(previousPosition != currentPosition){
			previousPosition = currentPosition;
		}else{
			if(listePosition.size() < 5){
				if(valuePreviousListe != currentPosition){
					listePosition.add(currentPosition);
				}
			}else{
				if(valuePreviousListe != listePosition.get(1)){
					valuePreviousListe = listePosition.get(1);
					adapter.moletteAChange();
				}
				listePosition.clear();
			}
		}
	}

	public float getValeur(){
		return currentPosition;
	}

}
